package main

import "fmt"

func main() {
	// &变量 取内存地址
	var x = 100
	fmt.Println(&x) // 地址
	// fmt.Printf("%T", x)

	var p *int // 指针变量 是一个整型的指针类型
	p = &x
	fmt.Println(p)

	// 取值操作
	y := *p
	fmt.Println(y)

	// new函数
	//指针类型属于引用类型 包括切片 channel map
	// 引用类型当声明未赋值的时候，没有开辟新的空间 没有默认值

	a := new(int)
	fmt.Println(*a)
}
